#include <bits/stdc++.h>
using namespace std;
vector<pair<int, int>>M[200001];
int id[200001];
int dp[200001];
bool biju[200001];
DFS(int v)
{
biju[v]=1;
for(auto c : M[v])
{
if(biju[c.first]!=1)
{
if(id[v]<=c.second&&id[v]!=0)
{
id[c.first]=c.second;
dp[c.first]=dp[v];
}
else
{
id[c.first]=c.second;
dp[c.first]=dp[v]+1;
}
DFS(c.first);
}
}
}
int main()
{
int n;
cin>>n;
for(int i=0; i<n; i++)
{
int m, a, b, mx=0;
cin>>m;
for(int l=1; l<=m-1; l++)
{
cin>>a>>b;
M[a].push_back({b, l});
M[b].push_back({a, l});
}
id[1]=0;
dp[1]=0;
DFS(1);
for(int l=1; l<=m; l++)
{
if(dp[l]>mx)
{
mx=dp[l];
}
}
cout<<mx<<'\n';
for(int l=1; l<=m; l++)
{
M[l].clear();
biju[l]=0;
dp[l]=0;
id[l]=0;
}
}
return 0;
}
1452A - Robot Program | 344A - Magnets |
96A - Football | 702B - Powers of Two |
1036A - Function Height | 443A - Anton and Letters |
1478B - Nezzar and Lucky Number | 228A - Is your horseshoe on the other hoof |
122A - Lucky Division | 1611C - Polycarp Recovers the Permutation |
432A - Choosing Teams | 758A - Holiday Of Equality |
1650C - Weight of the System of Nested Segments | 1097A - Gennady and a Card Game |
248A - Cupboards | 1641A - Great Sequence |
1537A - Arithmetic Array | 1370A - Maximum GCD |
149A - Business trip | 34A - Reconnaissance 2 |
59A - Word | 462B - Appleman and Card Game |
1560C - Infinity Table | 1605C - Dominant Character |
1399A - Remove Smallest | 208A - Dubstep |
1581A - CQXYM Count Permutations | 337A - Puzzles |
495A - Digital Counter | 796A - Buying A House |